home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Tools & Utilities
/
Collection of Tools and Utilities.iso
/
bbsutil
/
wmail230.zip
/
WMSTRUCT.230
< prev
next >
Wrap
Text File
|
1992-12-28
|
13KB
|
286 lines
WMAIL 2.3 - Copyright 1990-92 by Silvan Calarco -
────────────────────────────────────────
Structures of files managed by WMAIL 2.3
────────────────────────────────────────
The following structures are created in Turbo Pascal; look at following
table for type compatibility.
Turbo Pascal C language Length
──────────── ──────────── ───────
Byte Char 1 byte
Char Char 1 byte
Integer Int 2 bytes
Word Unsigned Int 2 bytes
Longint Long 4 bytes
──────────── ──────────── ───────
String[] format uses a byte more than the number specified in brackets, as
the first one (String[0]) contains string length.
───────────────────────────────────────────────────────────────────────────
{ ***** Configuration file structures *********************************** }
SetRec=Record { >>>>> file WMAIL.PRM <<<<< }
Version:Word; { 4: WMail 2.0
5: WMail 2.1
9: WMail 2.2
10: WMail 2.3 }
Sysop:String[30];
Key:String[16];
Aka:Array[0..10] of { Aka 0 is primary address }
Record
Zone,Net,Node,Point:Integer;
Domain:String[20];
end;
FakeNet:Word;
ZoneGate:Array[1..10] of
Record
Net,Node:Integer;
end;
Active_Options:Byte; { Bit mapped:
0: Import dupes
1: Import bad messages
2: Do statistics
3: Use log file
4: Use nodelist files
5: Create new Fido area
6: Create new QBBS area
7: Binkley mode on }
Swap:Byte; { 0: No swap; 1: Disk swap; 2: EMS swap }
MinSpace:Word;
Dir:Record
Mail,Files,Out,ArcMail,MsgBase,Dupes,
BadEcho,Packer,Stats,NewAreas,Nodelist:String[60];
end;
Origin:Array[1..10] of String[65];
AreaListFile:String[60];
LogFile:String[60];
LogLevel:Byte; { 0: Important messages
1: Important+normal messages
2: Important+normal+detailed messages
3: Debug mode (all sort of messages) }
LogStyle:Byte; { 0: Binkley Term; 1: FrontDoor }
Active_Options2:Byte; { Bit mapped:
0: Kill rcvd messages
1: Sort nodes
2: Write nodes in short form
3: Allow user rescan
5: Combine 2 tear lines
6: Honour RRQs
7: Kill packed messages }
C_WindowBorder, { Video attributes }
C_WindowTitle,
C_WindowNorm,
C_WindowHi,
C_SelBar,
C_ShowField,
C_EditField,
C_MenuDeny,
C_MessageNorm,
C_Griglia,
C_TopBar,
C_BottomBar,
C_InfoBar,
C_WMailText:Byte;
Filler1:Array [1..2736] of Byte;
RouteFile:String[60];
Packer:Array[1..7] of { See DefPacker for packers and unpackers
correspondence. }
Record
Name:String[12];
Parms:String[20];
end;
UnPacker:Array[1..7] of
Record
Name:String[12];
Parms:String[20];
end;
DefPacker:Byte; {1:ARC 2:ARJ 3:LZH 4:PAK 5:ZIP 6:ZOO 7:SQZ}
Def_Misc:Byte; { Bit mapped:
0: Put origin
1: Put tear line
2: Hide SEEN-BY
3: Strip 4d address
4: Add AKA's
5: Put domain
6: Force Public
7: Force Private }
Rescan_File:String[60];
LinkNodes:String[60];
CreatingNodes:String[60];
AlertNodes:String[60];
AfFlags:Byte; { Bit mapped: (for areafix)
0: Kill processed messages
1: Sort nodes
2: Write nodes in short form
3: Allow rescan
4: Set Crash bit on (in answer msgs.)
5: Set Hold bit on
6: Set Killsent bit on }
Def_Misc2:Byte; { Bit mapped:
0: 4d point infos }
Unused:Array[1..754] of Byte;
end;
AreasRecord=Record { >>>>> File AREAS.PRM <<<<< }
Titolo : String[40];
Path : String[80];
Tipo : Byte; {Local=1 EchoMail=2 NetMail=3
Passthru=4}
WEdOrigin: Byte; { Used by WEdit }
Tag : String[40];
Def_Attr : Byte; {Bit Mapped (used by WEdit):
Bit 0 : Pvt
Bit 1 : Crash
Bit 4 : F/A
Bit 7 : Kill/Sent}
ForwardTo: Array[1..3] Of String[60];
Aka : Byte;
Misc : Byte; { Bits: see SetRec.Def_Misc }
Level : Byte;
WMOrigin : Byte;
WEd_Aka : Byte; { Used by WEdit }
General : Byte { Bit mapped:
0: Inactive area }
Misc2 : Byte; { Bits: see SetRec.Def_Misc2 }
Fill : Char;
CWExtRec : Word; { Must be equal to ExtendRec; if not so
assume ExtendRec:=0 }
ExtendRec: Word; { Used for compatiblity with different
versions of WMail & WEdit; it contains
the number of bytes to skip to find next
record (0 in this version) }
end;
NodesRecord=Record { >>>>> file NODES.PRM <<<<< }
Zona,Net,Nodo,Point:Integer;
Packer:Byte; { Like in SetRec.Def_Packer }
PktPw:String[8];
Filler:Array[1..12] of Byte;
AfPw:String[20];
Level:Byte; { The level assigned to the node
for areafix operations }
Misc:Integer; { Bit mapped:
0: Daily packets }
Aka:Byte;
Filler1:Array[1..20] of Byte;
end;
{ ***** Statistics files structures ************************************* }
Stat1=Record { >>>>> file WMSTAT1.DAT <<<<< }